﻿//
// Copyright (c) 2024 BPer
//
#ifndef BPERCAPTURE_SRC_BPERSCREENSHARE_H_
#define BPERCAPTURE_SRC_BPERSCREENSHARE_H_
#include <bpercapture/BPerScreenCapture.h>

class BPerScreenShare :public BPerScreenCapture{
public:
	BPerScreenShare();
	virtual ~BPerScreenShare();


public:
	void setScreenHandle(BPerScreenCaptureHandleI *handle);
	void setInterval(int32_t pinterval);
	int32_t init();
	void setVideoCaptureStart();
	void setVideoCaptureStop();
	void setOutVideoBuffer(BPerVideoBuffer *pbuf);
	int32_t getVideoCaptureState();
	void initstamp();
	void stopLoop();
private:
	int32_t m_isloop;
	int32_t m_isCapture;
	int32_t m_interval;
	BPerScreenCaptureHandleI *m_capture;
	BPerVideoBuffer *m_out_videoBuffer;


protected:
	void startLoop();
};




#endif /* BPERCAPTURE_SRC_BPERSCREENSHARE_H_ */
